﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MMessaging.MessagingEx.Queues
{
	/// <summary>
	/// Ein bidirektionaler Channel für Interthread-Kommunikation mittels priorisierter Messages 
	/// </summary>
	/// <typeparam name="MESSAGETYPE">
	/// Wenn die Messages eine Priorität haben sollen, müssen sie 
	/// das Interface IMPrioMessage implementieren.
	/// </typeparam>
	public class MChannelInterThreadDuplex<MESSAGETYPE> : MChannelDuplex<MESSAGETYPE>
		where MESSAGETYPE : class
	{
		/// <summary>
		/// 
		/// </summary>
		/// <param name="name">
		/// Logging-Name des Channels
		/// </param>
		public MChannelInterThreadDuplex(
			string name) : 
			base(
				name,
				new MChannelInterThreadPrio<MESSAGETYPE>(name),
				new MChannelInterThreadPrio<MESSAGETYPE>(name))
		{
		}
	}
}
